package com.fdb.basic.framework.core.util;

import com.fdb.basic.framework.core.constant.DblStEnum;

/**
 * 借据状态工具类
 */
public class AccLoanStatusUtils {

    /**
     * 根据互金的两种状态转换成网贷的一种状态
     * A活动+ZHC正常 = 正常
     * A活动+YUQ逾期 =逾期
     * A逾期活动+FYJ非应计 = 非应计
     * P逾期+YUQ逾期 = 逾期
     * P逾期+FYJ非应计 =  逾期
     * C关闭+YUQ逾期 = 结清
     * C关闭+FYJ非应计 = 结清
     * C关闭+ZHC正常  = 结清
     * p逾期+ZHC正常 = 正常
     *
     * -------20200729互金补充
     * A活动+ZHC正常 = 正常
     * A活动+YUQ逾期 =逾期
     * A活动+FYJ非应计 = 非应计
     * A活动+FY非应计（手工） = 非应计
     * A活动+WRN核销 = 核销
     * P逾期+ZHC正常 = 正常
     * P逾期+YUQ逾期 = 逾期
     * P逾期+FYJ非应计 = 非应计
     * P逾期+FY非应计（手工） = 非应计
     * P逾期+WRN核销 =  核销
     * C关闭+ZHC正常 = 结清
     * C关闭+YUQ逾期 = 结清
     * C关闭+FYJ非应计 = 结清
     * C关闭+FY非应计（手工） = 结清
     * C关闭+WRN核销 = 结清
     *
     *
     * @param accStDesc        账户状态描述
     *                         A活动 C关闭 P逾期
     * @param accountingStatus 核算状态
     *                         ZHC 正常
     *                         YUQ 逾期
     *                         FYJ 非应计
     *                         WRN 核销
     *                         FY 非应计-手工
     * @return
     */
    public static String transferAccStatusByHj(String accStDesc, String accountingStatus) {

        switch (accStDesc + accountingStatus) {
            case "AZHC":
                return DblStEnum.ENUM_1.getValue();
            case "AYUQ":
                return DblStEnum.ENUM_10.getValue();
            case "AFYJ":
                return DblStEnum.ENUM_14.getValue();
            case "AFY":
                return DblStEnum.ENUM_14.getValue();
            case "AWRN":
                return DblStEnum.ENUM_9.getValue();
            case "PWRN":
                return DblStEnum.ENUM_9.getValue();
            case "PFY":
                return DblStEnum.ENUM_14.getValue();
            case "PYUQ":
                return DblStEnum.ENUM_10.getValue();
            case "PFYJ":
                return DblStEnum.ENUM_14.getValue();
            case "CYUQ":
                return DblStEnum.ENUM_4.getValue();
            case "CFYJ":
                return DblStEnum.ENUM_4.getValue();
            case "CFY":
                return DblStEnum.ENUM_4.getValue();
            case "CZHC":
                return DblStEnum.ENUM_4.getValue();
            case "PZHC":
                return DblStEnum.ENUM_1.getValue();
            case "CWRN":
                return DblStEnum.ENUM_4.getValue();
            default:
                return "";
        }

    }
}
